1. Field of the Invention
The present invention generally relates to nodes in a large network and, more particularly, to techniques for maximizing efficient use of bandwidth by network devices in a large Voice over Internet Protocol (VoIP) network.
2. Discussion of Background
In Voice over Internet Protocol (VoIP), a digitized voice stream is sent across an IP network with a certain amount of voice in each packet. Due to the small size of the voice stream (64 kb/s non-compressed, down to 4.8 kb/s compressed) and the required of low latency, the frame size of voice data to be sent in each packet is relatively small.
The Internet Protocol (IP) imposes a minimum of 20 bytes of headers, containing such information as the destination IP address. The User Datagram Protocol (UDP), typically used for voice transport applications, adds another six bytes of header information. A typical voice frame may be around 24 bytes (e.g. G.723.1 at 6.4 kb/s). The resulting total packet size is 50 bytes, of which 26 (52%) are overhead.
The result of the packet overhead is that to transport voice over IP, a little more than twice the bandwidth is required to transport the voice data with packet headers than the actual voice data itself. In addition, the packet sizes are exceeding small, which can tax the available processing power on routers in the IP network.
In order to minimize the packet overhead and increase the size of the voice packet (without increasing latency), frame packing techniques are used. With frame packing, multiple frames of voice data from different calls are put into the same packet. The packet overhead is then spread out over many calls. For example, if 50 calls are packed into the same packet, the resulting 900 bytes of data only require the same 26 overhead bytes (using G.723.1 at 6.4 kb/s as the example). The result is now only 2.9% of overhead, requiring only a small amount of additional bandwidth to transport the voice data. Further, the packet size is now much larger, significantly decreasing the number of packets the network routers must handle.
FIG. 1 shows a small VoIP network. In small VoIP networks, there may be up to a dozen VoIP nodes in the network. Frame packing works by packing all calls going to the same destination into the same packet stream (or multiple packet streams if required). With only a small number of other nodes to connect to a given node, there is high probability that there will be a large amount of calls going to all of the possible destination nodes. With a large amount of calls, frame packing is effective.
FIG. 2 shows a large VoIP network. In very large VoIP networks, there may be hundreds of VoIP nodes in the network. In this scenario, there is much less certainty there will be sufficient amount of calls going to each destination to allow frame packing to be effective.